This application generally relates to data transfers in computer systems, and more specifically to transferring different types of data in computer systems.
In a computer system, data transmissions may be required to move data from one storage location to another. The data to be transferred may include different data types, such as text and non-text data. Generally, non-text data may include audio data, image data, and other data that may also be characterized as multi-media data. Different mechanisms may exist to facilitate the transferring of different data. types. For example, one mechanism provided for data transfers between two databases includes support within databases for transferring text data. However, the mechanism for data transfer, as in databases, may not provide a mechanism for non-text or multi-media data transfers. In the latter case, an alternative technique may be used to facilitate the transfer of multi-media data, for example, in data transfers between databases.
One technique for transferring multi-media data, as between databases, uses an alternative data channel. This alternative data channel is generally external to the database and does not use database-provided mechanisms in data transfers. Using this technique, both text and multi-media data may be transferred using the alternative data channel. A problem with this technique is that it is generally not an efficient mechanism for transferring both text and multi-media data. Generally, the external mechanism may not be the most efficient mechanism by which to transfer text data, as existing database-provided routines may be more efficient and tuned for database data transfers.
Thus, there is required an efficient and flexible technique which facilitates the transfer of different data types, as in a computer system.
In accordance with principles of the invention is a method of performing a data transfer in a computer system. Data is selected to be transferred from a first location to a second location in which the data includes a text portion and a non-text portion. The text portion is transferred using a first data channel from the first location to the second location storing the text portion in a temporary location. The non-text portion is transferred using a second data channel from the first location to the second location. The steps of transferring the text portion and non-text portion are performed asynchronously, and initially the text and non-text portions are copied to a temporary location, and then merged with other data from another data transfer.
In accordance with another aspect of the invention is a method executed in a computer system for performing a data transfer. An advertising page is selected to be transferred from a first location to a second location, advertising data of the advertising page being represented by a relational mapping table describing the relationship between data entities associated with the advertising data, and a data table including the advertising data represented by the relational mapping table, the relational mapping table including only text data and the data table including text and multimedia data. The text data of the relational mapping table is transferred using a first communication channel to a temporary relational mapping table located at the second location. The text data of said data table is transferred to a temporary data table located at the second location. The multimedia data is transferred to a repository at the second location, the repository being a location which includes other multimedia data from other data transfer operations associated with other advertising pages. The temporary data table is merged into another data table by copying the text data from the temporary data table to the other data table at the second location. For each entry of the temporary data table, a matching entry in said repository is identified in which the global identifier of the temporary data table matches a global identifier of the repository. A repository identifier of said matching entry is copied from the repository to the entry in the other data table, the repository identifier being a pointer to the multimedia data located in the repository and being a link between an associated entry in the other data table describing the matching entry in the repository.
Thus, there is provided an efficient and flexible technique which facilitates the transfer of different data types, as in a computer system.